Graphical models facilitate the modeling of systems such as, for example, real-world systems, for engineering and scientific purposes. A graphical model of a system may represent time-dependent or event-dependent mathematical relationships among the system's inputs, states and outputs. System designers can use graphical models to mathematically model the behavior of a physical system. Challenges in the development of systems involve correctly implementing requirements and specifications created by the system designer. These specifications are often delivered to systems and software engineers in the form of written documents, flow charts, and sample code that must then be manually implemented in the embedded system. Graphical model-based design intends to support everyone working from the same models in real time, avoiding time-consuming, manual coding tasks and reducing the potential for errors.
Graphical models can be configured and prepared for code generation. Code can be automatically generated from a graphical model for prototype hardware to allow real-time implementation of a system. One use of graphical models capable of automatic code generation is in the design of embedded systems. Embedded system designers can implement a graphical model to operate in real time using automatically-generated code for testing, prototyping and optimization before deployment in the embedded systems. Graphical models capable of automatic code generation thus may reduce development time and costs by enabling the embedded system designers to run real-time simulations with hardware-in-the-loop systems, rapidly prototype ideas on real systems and generate production C code from models.